/*
 * Copyright (c) 2019 The StreamX Project
 * <p>
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License. You may obtain a copy of the License at
 * <p>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p>
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied. See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
export function toPomString(pom) {
    const groupId = pom.groupId
    const artifactId = pom.artifactId
    const version = pom.version
    const exclusions = pom.exclusions || []
    let exclusionString = ''
    let pomString = ''
    if (exclusions.length > 0) {
        exclusions.forEach((item) => {
            exclusionString +=
                '        <exclusion>\n' +
                '          <groupId>' + item.groupId + '</groupId>\n' +
                '          <artifactId>' + item.artifactId + '</artifactId>\n' +
                '        </exclusion>\n'
        })
        pomString =
            '  <dependency>\n' +
            '     <groupId>' + groupId + '</groupId>\n' +
            '     <artifactId>' + artifactId + '</artifactId>\n' +
            '     <version>' + version + '</version>\n' +
            '     <exclusions>\n' + exclusionString +
            '     </exclusions>\n' +
            '   </dependency>'
    } else {
        pomString =
            '  <dependency>\n' +
            '    <groupId>' + groupId + '</groupId>\n' +
            '    <artifactId>' + artifactId + '</artifactId>\n' +
            '    <version>' + version + '</version>\n' +
            '  </dependency>'
    }
    return pomString
}
